Zadig 文档
Zadig
教程
博客
论坛
关于
中文英文
Zadig
教程
博客
论坛
关于
Zadig v4.2
Loading...
     编辑文档
     反馈问题
     社区讨论

    本页导航

    安全服务接入

    # 概述

    Zadig 具备管理软件开发全生命周期的能力,几乎支持市面上所有的安全工具和服务。比如 SAST 工具 SonarQube(opens new window)、Fortify(opens new window)、Coverity(opens new window),SCA 工具 CleanSource(opens new window),DAST 工具 DongTai(opens new window)。Zadig 可以很方便的将这些工具编排到整个交付链路中,借助强大的运行时环境和工作流能力,为安全团队提供强有力的支持。

    Zadig 帮助安全团队将安全服务和能力向左移动到开发、测试和运维团队,尽早发现安全问题,使其他角色也参与解决安全性和合规性问题,从而避免因修复此类问题而造成额外成本。

    # 安全服务接入

    # 静态安全 SAST - Sonar

    第一步:配置代码扫描

    新增代码扫描,选择 SonarQube 扫描工具,填写代码扫描配置,参考 代码扫描。

    安全服务接入手册

    第二步:在工作流中编排代码扫描

    编辑工作流,按需在指定阶段(如:构建任务之前)添加代码扫描任务,参考 配置工作流。

    安全服务接入手册

    # 软件成分分析 SCA - Fortify

    第一步:构建自定义镜像

    1. 构建自定义镜像并上传到镜像仓库中,参考 自定义镜像。
    2. 在 Zadig 中添加自定义镜像,参考 添加自定义镜像。

    安全服务接入手册

    第二步:配置 SCA 扫描

    新增测试,并完成 Fortify SCA 代码扫描的具体配置,相关参数说明如下,更细节的介绍可参考 测试。

    • 操作系统:第一步中添加的自定义镜像
    • 测试脚本:执行代码扫描的具体命令,可参考 Fortify SCA 官方文档
    • 测试结果导出:配置扫描结果所在的路径

    第三步:编排 SCA 扫描

    在工作流中编排 SCA 扫描,参考 编排任务。

    运行工作流,待 Fortify SCA 执行完毕后,可下载扫描结果进行分析。

    安全服务接入手册

    # 动态安全 IAST - DongTai

    第一步:将 IAST 能力集成到服务中

    修改服务的 YAML 配置内容,安装 DongTai IAST Agent,并修改服务启动命令。服务 YAML 样例如下:

    提示

    可以在服务的 YAML 配置内容中灵活使用 Zadig 的服务变量能力,按需控制是否需要为服务安装 Agent 进行动态安全检测,参考 服务变量。

    // 服务原始配置内容
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      labels:
        app: service1
      name: service1
    spec:
      selector:
        matchLabels:
          app: service1
      template:
        metadata:
          labels:
            app: service1
        spec:
          containers:
            - name: service1
              image: dongtai/dongtai-java-agent-demo:0.0.1
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    // 安装 DongTai IAST Agent 后的服务配置内容
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      labels:
        app: service1
      name: service1
    spec:
      selector:
        matchLabels:
          app: service1
      template:
        metadata:
          labels:
            app: service1
        spec:
          {{- if .iast }}
          volumes:
            - name: dongtai-iast-agent
              emptyDir: {}
          initContainers:
            - name: agent-init-container
              image: curlimages/curl
              volumeMounts:
                - name: dongtai-iast-agent
                  mountPath: /tmp
              args:
                - "-k"
                - "-X"
                - "GET"
                - "从洞态管理后台获取到的 Agent 下载请求地址"
                - "-H"
                - "从洞态管理后台获取到的 Agent 下载请求的 Header 信息"
                - "-o"
                - "/tmp/agent.jar"
          {{- end}}
          containers:
            - name: service1
              image: dongtai/dongtai-java-agent-demo:0.0.1
              {{- if .iast }}
              volumeMounts:
                - name: dongtai-iast-agent
                  mountPath: /agent
              env:
                - name: JAVA_TOOL_OPTIONS
                  value: "-javaagent:/agent/agent.jar"
              {{- end}}
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47

    第二步:将服务部署到环境中

    将注入 IAST Agent 的服务部署到环境中,参考 添加服务。

    安全服务接入手册

    # DevSecOps 核心用户场景介绍

    # 开发阶段静态安全注入

    流程包含:代码提交 > 静态扫描 > 构建 > 部署> 自测联调

    代码实现完毕提交代码变更 PR 后,会自动触发静态代码扫描执行。扫描结果会反馈在 PR 中,点击可跳转 Zadig 查看失败原因,在开发源头有效规避代码中的质量隐患、安全隐患。

    对于使用 SonarQube 工具的代码扫描,点击链接可跳转 Sonar 系统分析代码扫描的更多结果,有针对性的修复,修复完毕后执行 dev 工作流进行日常自测联调。

    # 测试阶段组合安全策略

    流程包含:静态扫描(开启质量门禁) > 构建 > 部署 > 自动化测试(业务测试 + 动态安全检测)

    研发提测后,测试工程师基于代码分支 + PR 执行工作流,部署集成测试验证环境并对环境做自动化测试。工作流执行后会自动通知到 IM 中。登录管理后台可查看动态安全检测漏洞详情,推进团队及时修复,尽早规避安全风险。

    安全服务接入手册安全服务接入手册

    如果静态扫描任务执行失败,将会阻止后续的构建和部署任务运行。未通过验收的代码变更将被拒绝合并,以便从源代码层面捕获安全隐患,并建立有效的质量门禁措施。这种做法可以防止潜在问题进入到系统中。

    安全服务接入手册

    # 发布阶段全巡检审批

    流程包含:安全委员会审核 > 分批次灰度发布 > 自动化测试

    当测试验收通过后,执行 prod 工作流执行生产发布,审批通过后方可发布,建议几种配置策略:

    1. 建设发布门禁,通过自定义任务自动获取安全扫描、单元测试、回归测试等质量结果来判断是否允许上线,作为上线过程的卡点,确保版本验收通过并且符合企业安全要求后再做上线操作。
    2. 灵活编排 MSE 灰度、蓝绿、金丝雀、分批次灰度、Istio 等发布策略,以确保发布可靠性,可参考:发布策略。
    3. 发布阶段增加安全团队人工审批,以确保业务流程上的发布合规性。

    安全服务接入手册安全服务接入手册

    ← 测试能力接入产品使用手册→

    资源
    教程
    论坛
    博客
    公司
    关于
    客户故事
    加入我们
    联系我们
    微信扫一扫
    hello@koderover.com

    © 2026 筑栈(上海)信息技术有限公司 沪 ICP 备 19000177 号 - 1

    •  跟随系统
    •  浅色模式
    •  深色模式
    •  阅读模式